AWS ParallelCluster 2.10.0新機能CloudWatchダッシュボード自動作成
AWS ParallelCluster 2.10.0の新機能紹介
HPCクラスター構築時にCloudWatchダッシュボードが自動作成されるようになりました。
- AWS ParallelClusterはAWSがサポートする、HPCクラスターの管理ツールです。
- 必要に応じて自作していたダッシュボードを最初から用意してくれている!
- ヘッドノードの標準メトリクスと、CloudWatch Logsのログが表示されるダッシュボードでした。
Create a CloudWatch Dashboard for the cluster, named
- , including head node EC2 metrics and cluster logs. It can be disabled by configuring the enable parameter in the dashboard section.
Release AWS ParallelCluster v2.10.0 · aws/aws-parallelcluster
検証環境
項目 | 値 |
---|---|
ParallelCluster | 2.10.0 |
OS | Ubuntu 18.04 LTS |
AMI | aws-parallelcluster-2.10.0-ubuntu-1804-lts-hvm-arm64-202011172100 |
ParallelClusterのモニタリングダッシュボード
ParallelCluster 2.10.0からCloudWatchダッシュボードが作成されます。どんな感じなのか実際にクラスター作成して見てみましょう。趣のあるUIを提供してくれるGangliaのモニタリングオプションを過去のものとしてくれるのでしょうか。
クラスター設定ファイル全文
検証時の設定ファイル内容です。下記の項目は環境に依存します。
- aws_region_name
- key_name
- vpc_id
- master_subnet_id
- compute_subnet_id
[aws] aws_region_name = us-east-1 [global] cluster_template = default update_check = true sanity_check = true [aliases] ssh = ssh {CFN_USER}@{MASTER_IP} {ARGS} [cluster default] key_name = sandbox-key-useast1 base_os = ubuntu1804 scheduler = slurm vpc_settings = custom s3_read_resource = arn:aws:s3:::pcluster-postinsall/* post_install = s3://pcluster-postinsall/postinstall.sh additional_iam_policies = arn:aws:iam::aws:policy/AmazonSSMReadOnlyAccess # Instance Type master_instance_type = c6g.large # Queue queue_settings = 2x, 16x # Tag tags = { "Name" : "MultiQueue-Cluster" } # --- VPC Setting --- [vpc custom] vpc_id = vpc-07edfc27679c9ca80 master_subnet_id = subnet-0ab2754446b2f87a4 compute_subnet_id = subnet-0ab2754446b2f87a4 use_public_ips = true # --- EBS Setting --- [ebs external_ebs] shared_dir = /shared volume_type = gp2 volume_size = 20 # --- ComputeNode Setting --- [queue 2x] compute_resource_settings = 2x placement_group = DYNAMIC compute_type = spot [queue 16x] compute_resource_settings = 16x placement_group = DYNAMIC compute_type = spot [compute_resource 2x] instance_type = c6g.2xlarge max_count = 32 [compute_resource 16x] instance_type = c6g.16xlarge max_count = 8
クラスター作成
pcluster createコマンドで任意の管理名称を設定し、設定ファイルを引数に指定します。管理名称はmulti-cluster
としています。
> pcluster create multi-cluster -c multi-cluster
CloudWatchダッシュボードの確認
parallelcluster-<管理名称>-<リージョン名>
のダッシュボードが作成されています。
ヘッドノードの標準メトリクス表示
ヘッドノードのEBSのメトリクス表示
ヘッドノードの/var/log
のいくつかログファイル
CloudWatch Logs設定
ダッシュボードにログが表示されていました。以前は明示的にCloudWatch Logsの設定を入れないとログはインスタンスのローカルにしか保存されませんでした。v2.10.0ではデフォルトで14日保持のCloudWatch Logsの設定が有効化されていました。
コンピューノードのログも保存されています。ダッシュボードの表示はヘッドノードのログのみでした。先頭のプライベートIPのIPアドレスでログを判断。
おわりに
ダッシュボード作るの大変なので最初から用意されているのはありがたいです。Gangliaは過去にしたとは言えませんでした。一方のGangaliaはメモリ使用率や、コンピューノードをまとめて表示できます。自動作成のCloudWatchダッシュボードはヘッドノードの標準メトリクスとログの表示です。コンピューノードは2.9.0からAutoScalingGroupでもないため、ダッシュボードでまとめて表示するのは難しいのでしょう。以前ダッシュボード表示を頑張ったのですがうまく表示する方法を見つけられませんでした。
以上、AWS ParallelClusterの最前線から網走の大村@コンサル部でした。